/**
 * $Id: TestMain.java,v 1.0 2022/6/3 22:53 shidesheng Exp $
 * <p>
 * Copyright 2021 Sinosoft Co.,Ltd. All rights reserved.
 */
package sds.mode.factory.simple;


/**
 * @author shidesheng
 * @version $Id: TestMain.java,v 1.1 2022/6/3 22:53 shidesheng Exp $
 * Created on 2022/6/3 22:53
 *
 * 简单工厂模式
 * 适用场景：
 * 客户只需传入工厂类的参数，对于如何创建对象的逻辑则不需关心
 * 优点：
 * 只需传入一个正确的参数，就能获取所需要的对象，无需知道其创建细节
 *
 * 缺点：
 * 工厂类的职责相对过重，增加新的产品时需要修改工厂类的判断逻辑，违背开闭原则
 * 不利于扩展过于复杂的产品结构
 */
public class TestMain {

	public static void main(String[] args) {
		ICourse couse = new CourseFactory().create(JavaCourse.class);
		couse.record();

	}
}
